
EI                           Z-NEWS  803                       31  August 1987

Of  Significance.  Don't miss universal TYPE command, one that  "types"  plain 
text,  squeezed, crunched, and library files.  Command is created with  ZFILER 
calling  LT, VTYPE, and a three-alias ALIAS.CMD suite.  It's described at  end 
of Z-User's Corner below.  Power of such command separates Z-System from other 
operating systems.
     P.J.  Plauger, of C language and software tools fame, writes much  needed 
business  ethics article in Computer Language, Sept., '87 issue, pages  13-19.
"Just because they can get away with it doesn't make it right."  "Just because 
you're right doesn't mean they can't get away with it." "Just because you  can 
get away with it doesn't make it right."  "Just because they're right  doesn't 
mean  you  can't get away with it."  Four seeming  contradictions,  much  like 
"right of might" versus "might of Right" of Z-News 309, top of page 3, and  Of 
Angels  and Eagles of 704.  P.J. starts slow but builds to a crescendo,  tells 
it like it must be for personal growth.  Required reading!
------------------------------------------------------------------------------
From The  Mail Box.  George Dremann writes asking our help to establish commu-
nications with those who own Ithaca Intersystems S-100 computers,  "especially 
6MHz III Main Processor Boards."  Are there enough of you left out there  with 
the soul to remember what S-100 is?)  Since the company is no longer in  busi-
ness  present users should, may like to know who remains in  their  community.
If interested in becoming part of the community, please contact Mr. Dremann at 
1940 Hopkins St., Berkeley, CA 94707, 415/524-7250.
     From Orinda, CA, Richard Wood considers buying a DT42 (Z-News 501), sends 
us some benchmarks of an IBM 10MHz AT clone (AST) with 2 megabytes of RAM  and 
a  40-megabyte,  30-millisecond access hard disk--a powerful  (costly)  setup.
Using MS-DOS TYPE function Richard, scanning a 160k-byte text file from top to 
bottom, produces these impressive measurements:

             Condition                            Time, seconds
             --------------------------------------------------
             Standard DOS v3.1                    150
             DOS 3.1 with Fansi-Console            74
             Same but with F-C hardware scroll     24

Fansi-Console  has a fast mode by accessing the 6845 display controller  chip.
F-C  makes  direct BIOS calls, bypassing the DOS  output-to-console  function.
Speed is equivalent to 67k-baud.
     We  used  our  Ampro 4MHz Z80 machine  with  20-megabyte,  65-millisecond 
access  hard disk, Wyse 38.4k-baud terminal, testing three "type" programs  at 
hand, to scan 160k-byte text file.  Echelon results: 

             Condition                            Time, seconds
             --------------------------------------------------
             VTYPE from ZRDOS v1.7                118
             TYPE of ZCPR v3.3                     97
             "V" command of ZFILER v1.0f           68

VTYPE  is slowest because of extensive character testing going on as  text  is 
scrolled--scrolls  forwards and backwards line-to-line or  page-to-page,  near 
instant goto bottom-of-file or top-of-file from anywhere within file, in  con-
text help, plus many other bells and whistles.  TYPE is from command processor 
(CCP) of ZCPR v3.3 and has option to stop automatically at screen page breaks.
ŠZFILER's  V  command  has line-by-line and page-by-page,  and  to  end-of-file 
scrolling  abilities.  Draw your conclusions as to how much faster a  SemiDisk 
9.2MHz DT42 would be over Ampro 4MHz Z80 (hint: see testing results in  Z-News 
409 and 501).
     Thanks,  Richard,  for sharing your results with us.   We  recommend  you 
order today your longed-for DT42 computer.

Z-Node  Activity.   A programmer's tip that comes from Al  Hawley,  Z-Node  #2 
Sysop and present ZAS/ZLINK shepherd, suggests using ASET instead of EQU under 
certain conditions.  If you are having trouble with multiple same-label  defi-
nitions  coming from more-than-one, several "include" or "maclib" files,  ASET 
may be an answer.  ZAS provides both these pseudo-op code possibilities.  ASET 
is  useful  when  a label takes on more than one value during  the  course  of 
assembly.  EQU permits a label to acquire but one value.  ASET accepts getting 
identical values from several sources during an assembly.

Software Update Service Report.  Well, another SUS diskette is in the  making.
Subscribers have received fair value: we promised you at least 9 diskettes per 
year--we  have already shipped 11.  Here's how #12 looks at newsletter  go-to-
press time:

    XDIR III, Version 2.0    Horizontal Listing by File Name/Type
     Disk: F  User:   0 Name: BACKUP, File Attributes:  Non-System
    Filename.Typ Size K RS   Filename.Typ Size K RS   Filename.Typ Size K RS
    -------- --- ------ --   -------- --- ------ --   -------- --- ------ --
    -SUS    .012      0      DD14    .LBR     16      FOR-NXT2.LBR     44
    Z33VERR .LBR     14      Z3VARS  .LBR     18      ZF10F   .LBR     36
    ZFILER  .CMD      4      ZLDIR   .LBR     10      ZMANG-20.LBR     48
             9 Files Using 190K, 9 Files on Disk and 196K Left

Disk Directory v1.4 is alternative to DIR coming from Terry Hazen--a very nice 
ZCPR3 utility.  FOR-NXT2 are useful batch (FOR-NEXT-PERFORM) utilities, espec-
ially for RAM and fast hard disk users, from Dreas Nielsen, the Z-System shell 
expert.   Also from flinty Dreas comes Z3VARS, a library he uses to make  easy 
creation of shells and other utilities.
     ZF10F is latest upgrade of ZFILER from Z-Team member, Jay Sage, author of 
ZCPR  v3.3.   ZFILER  v1.0f has macro-command file tagging  facility,  a  real 
break-thru  for  our shells.  Jay soon further upgrade ZF to more than  it  is 
now.
     ZLDIR  is NAOGer Bruce Morgen's update of Sigi Kluger's LDIR.   ZLDIR  is 
fast, much faster than LLF but doesn't have some of LLF's bells and  whistles.
We  use  ZLDIR in our TLF alias for seeing the text files to be scanned  in  a 
library file (see below for an update to the TLF suite).
     ZMANG-20 is Z-Node #60 Sysop Bob Peddicord's near-final product for  file 
management under Z-System.  Menu shell is declared a "super utility" and  will 
find uses by those wanting extreme flexibility to manage application  programs 
and general housekeeping.  Syntax is near identical to ZFILER making menu pro-
gramming easier.  Soon all our shells will have similar parametric syntax  and 
grammar.
   
Z-User's  Corner.   Correctly placed hyphens within words permit lines  to  be 
justified  neatly flush left and right, with even and not too much  space  be-
tween words and characters.  WordStar, Release 4.0, comes with The Word  Plus, 
TW for short, with expanded main dictionary of over 61,000 words.  Earlier  TW 
had  only 45,000 words.  In addition to all the new WordStar  features,  math, 
Šmacros, proportional spacing with right-margin alignment, TW adds word  handl-
ing  tools: SPELL,  REVIEW,  LOOKUP,  FIND,  ANAGRAM,  MARKFIX,  HYPHEN,   WC,
DICTSORT, and WORDFREQ.  You can run spell checks from WS's main menu and  you 
can  run any command.  As a ZCPR3 shell and utility, WS v4.0 knows  paths  and 
named directories, command errors are turned over to installed error  handler.
(We  use Z33VERR from SUS #12.)  From within WordStar, using the  "R"  command 
from  main menu, many aliases have been found useful, and actually at  lot  of 
fun to design and develop.

   hyph if ~nu $1;echo $0 - d%>etermine word hyphenation;                  <<
   echo        s%>yntax: $0<cr>;else;cls;echo e%>nter%< ctrl-c %>to exit;  <<
   echo;PRIVATE:;hyphen;$d0$u0:;fi

   hf if //=$1;or nu $1;echo $0 - h%>yphenate words in a file;             <<
   echo      s%>yntax: $0 <fn.ft><cr>;else;cls;A:;hyphen $d0:$1 $$4;$d0:;fi

HYPH followed by a <cr> causes TW's HYPHEN program to load and prompt the ope-
rator  for  a word.  This word is the one you wish to know how  to  hyphenate.  
Some  built-in  help is provided with alias script.  If you enter  other  than 
verb name, i.e., HYPH, followed by a return, you get the title and syntax mes-
sage.  We use ECHO's lowercase switch, %>, after the first letter of messages, 
Z-News 801-3.  Leading spaces are used to line-up display text for a pleasing, 
designed  appearance.   (Remember the "<<" convention.  It means the  line  is 
one,  is continuous.  Break is required because page is too narrow for  multi-
ple-command line length.)
     HYPHEN, written by Wayne Holder of Oasis Systems five years ago, is not a 
Z-System  utility.   So, we have to use our wits (facilities of  Z-System)  to 
make  the  command  work  from  any directory.   Here's  what  we  do.   Place 
HYPHEN.COM and its "exception" file, HYEXCEPT.TXT, in a PUBLIC directory.  Our 
public  directory is named PRIVATE, directory A6.  After clearing screen  with 
resident CLS Z-System RCP command, needed to remove WordStar's prompt  messag-
es,  alias  logs  into PRIVATE, finds its TXT files and prompts  with  a  "?".
Here,  enter word for which you wish to determine hyphenation.  A reminder  is 
displayed to use ^C to exit.  On exit, you are automatically logged back  into 
your previous directory, the one from which you gave the alias command.
     You  may find HF, Hyphenate File, even more useful than HYPH.  It  places 
soft hyphens into words of a selected file.  Hyphens appear as "=" from within 
WordStar  v4.0 and Newword.  These are called soft hyphens.  Using ^OD  causes 
the  hyphens to disappear, except the ones at the end of lines that  print  as 
real  hyphens.  HF has built-in help we are accustomed to.  Notice how the  OR 
is used to avoid repeating the help message.  Alias is, as they say,  "bullet-
proof."   More tricks used here to make HYPHEN do what we want it to  do.   We 
hard-log  into  directory A; HYPHEN is then given the  drive  letter  (current 
drive) on which to find the file, represented by $1, the one you typed in,  in 
which to place the hyphens.  After we log back into our current directory from 
where  we placed the alias command.  The "$d0:$1" phrase means  current  drive 
and  first parameter after verb on command line, in this case the filename  of 
the  file  to  have hyphens placed into it.  Trailing  parameter  "$$4"  tells 
HYPHEN to place hyphens in all words 4 or more characters long, the default is 
10.   Here's  the built-in designed help displayed by the  aliases  after  you 
enter "<cmd> //<cr>":

     HYPH - Determine word hyphenation     HF - Hyphenate words in a file
            Syntax: hyph<cr>                    Syntax: hf <fn.ft><cr>

Š     Aliases such as HYPH and HF are best put into an ARUNZ CMD script, saving 
disk space over that occupied by normal one-file aliases.  Above examples  use 
ARUNZ  syntax and grammar, ready for ALIAS.CMD script file.  See Z-News  701-3 
for more on using ARUNZ as CMDRUN with LX and COMMAND.LBR, for speed and disk-
space  conservation.  Scan back issues of newsletter for many other alias  ex-
amples.  Now is the time to try your hand at creating more aliases to automate 
further your operations.  Let us see the results!  To stimulate action...
     We  show one more alias (actually three): the reincarnation of TLF,  Type 
Library Files, originally developed by Rick Charnes from ideas of GH and  GLF, 
Get  Help  and Get Library File, Z-News 507-3 and 508-4, as set  of  recursive 
aliases  creatable  only  with VALIAS.  Here we use  Rick's  technique  inside 
ALIAS.CMD  as  recursive  script  run by  Jay  Sage's  ARUNZ.COM,  renamed  to 
CMDRUN.COM.  After, we show how we use TLF in a ZFILER script line to  produce 
a universal TYPE command for files squeezed, crunched, in libraries, and  just 
plain text.  

   tlf if //=$1;or nu $1;echo S%>yntax: $0 [du:]<libname><cr>;else;        <<
   ROOT:quiet s;/tlib2 $1;fi

   tlib2 $z zif;ROOT:zldir $d1$u1:$:1;ROOT:getvar tlib file to type        <<
   (x=exit):;ROOT:resolve if x=%tlib;/exit;else;ROOT:resolve ROOT:         <<
   lt $d1$u1:$:1 %tlib;/$0 $1;fi

   exit $z zif;ROOT:quiet r;echo R%>eturning to%< Z-System...

     TLIB2  displays  list of files, ZLDIR actually does it,  within  library, 
prompts  for  file  to be typed, the one you desire to scan.   After  you  are 
finished with selected file, list is shown again, prompt asks for another file 
or for an "x" to exit.
     Now  for the ZFILER CMD line that pulls it  together--makes  magic--using 
LT, TLF above, and VTYPE to scan various kinds of text files.

   t!$d$u:;if lbr=$t;/tlf $n;else;if co $f;ROOT:lt $f;else;                <<
   ROOT:vtype $f;fi;fi;$h:

     If  file pointed-to is a library, TLF is run by ARUNZ renamed to  CMDRUN, 
our  ECP.  Note: "/" causes CCP to go directly to ECP for speed.  If  file  is 
squeezed  or crunched, i.e., compressed, detection occurs using "co"  operator 
of  Z33FCP; LT is called to type file.  Finally, if file is plain text,  VTYPE 
does typing to screen.
     ZFILER  command script is run by pressing Escape key followed by "t"  key 
for type.  You may wish instead to rename line "v" for view.  Of course point-
er  should  be on file you wish to type, either file or library,  squeezed  or 
crunched.
     One  final  user  thought: don't overlook usefulness  of  TCVIEW  by  Jay 
Roumman, on SUS #8 and Z-Nodes, to show what your TCAP is.

Terminal  Doings.  We periodically report ASCII/ANSI terminal developments  of 
Wyse, IBM, DEC, and TeleVideo.  What a competition!  Now Hewlett-Packard jumps 
into arena with its own models.  Model HP700/22 priced at $575 is  competitive 
with  WY-60  and TVI 955.  IBM and DEC aren't in the running for  value  here.
Model  HP700/41 takes ASCII low-end lead at $375 competing with WY-30 and  TVI 
905.   HP quality at this price?  Here again, IBM and DEC seem to have  little 
interest in new contest.  Surely Wyse and TeleVideo counter recent HP moves?

Š              A word of caution to would-be giant killers:  everyone 
         forgets  what would have happened to David if his shot  had 
         missed Goliath (I Samuel 17).

In  Other Words.  Words!  Oh!  Words!  What words to use next!   Words  formed 
from an alphabet make phrases into sentences, and in context, permit  transfer 
of thoughts from one human to another.  That's language!  "A systematic  means 
of  communicating ideas or feelings by the use of conventional signs,  sounds, 
gestures,  or marks having understood meanings."--one definition of  the  word 
language  from  Webster's  New Collegiate Dictionary, G&C  Merriam  Co.,  1980 
edition.   Wow!   A book could be written just to describe the words  used  to 
define  the word language: systematic, means, communicating, ideas,  feelings, 
conventional, marks, understood, meanings.  Any wonder we fail to communicate.
Fail so often!

         "When I use a word, it means just what I choose it to mean-
         -neither  more nor less.  The question is, which is  to  be 
         master"--Lewis Carroll in Through the Looking Glass.

     Usually  when thinking of language our minds are brought to  concepts  of 
spoken and written words (the marks of our definition), "verbalization" as  we 
often  say.  Now think of signs and gestures as elements of communication  and 
we  know why we seem to do a better job when face-to-face as opposed to  using 
the telephone.  These signs and gestures relay much of our inner being to any-
one  in  tune, and most of us are, to receiving such signals.   Will  machines 
ever have such tune?
     "A  picture is worth a thousand words."  We get into contextual  mood  by 
re-reading  Z-News  801, bottom of page 4 and all of 5.  What  and  where  are 
thoughts?   Thoughts become "concrete" when they are verbalized.  Much of  the 
magic  may  be lost in the process.  Why?  The words don't  fully  convey  the 
vision they attempt to replace.  Replacement tends to create an unreal  vision 
not of the original's quality.
==============================================================================
Of Angels and Eagles.  USA drifts into mold of managing wealth instead of cre-
ating  it.   Our brightest young people become lawyers engaged  in  litigation 
with  each  other rather than making the country work.  Our schools  have  far 
more courses offered in marketing, engineering, and finance than in  manufact-
uring--symptom of misdirected emphasis.  Remember Z-News 606-3,  "Manufactured 
products  lead  to research and development which lead  to  engineering  which 
leads  to  manufacturing  more products--a neat closed  loop."   Some  of  you 
thought engineering and R&D should come before manufacturing.  But manufactur-
ing  usually  creates  the wealth of a nation.  From there we  get  the  money 
("Where does money fit into our picture..." Z-News 305-5) to do R&D.   Missing 
this point is prime reason US has a $209 billion 1986 foreign debt.
     Stanford University economist Nathan Rosenberg stated recently that near-
ly half the US patents were given out to foreigners--lawyers and  arbitrageurs 
don't create, they administer and manipulate that already created.  Japan  has 
far  fewer engaged in legal and financial work than we do.  Most of  them  are 
concerned  about  customers' needs and product design and quality.   Our  main 
concern seems to be: when do we go home and start the weekend.
     Nineteenth century England was birthplace of those causing the Industrial 
Revolution: just about everything manual got electrically motorized.  The sons 
and daughters of these materially and spiritually rich people lost interest in 
what  their parents had wrought--so have most of us!  Is USA simply to be  one 
of many players on the world economic stage, and not be lead-nation as we have 
Šbeen for so many years?  See you down the lines...

Echelon, Inc.        885 North San Antonio Road        Los Altos, CA 94022 USA 
Telephone: 415/948-3820   Telex: 4931646    Z-Node Central (RAS): 415/948-6656

Trademarks:  Little Board, Bookshelf, Ampro Computers; SB180, SB180FX,  GT180, 
Micromint; ON!, Oneac; DT42, The SemiDisk, Deep Thought 42, SemiDisk  Systems; 
XLR8, M.A.N. Systems; VAX, Digital Equipment; Macintosh, Apple; HD63484/64180, 
Hitachi;  Z-System,  ZOS,  ZCPR3, ZRDOS, Z-Tools, Zas,  Zlink,  Z-Msg,  Term3, 
Quick-Task, NuKey, Z80 Turbo Modula-2, Lasting-Value Software, Echelon;  CP/M, 
Digital Research; Unix, AT&T; TurboROM, Advent; Graphix Toolbox, Turbo Pascal, 
Borland  Int'l;  Ada,  U.S. Government;  WordStar,  Newword,  MicroPro  Int'l; 
JetFind, Bridger Mitchell.


                  *                                        *



                                 Fly with Z!



                  *                                        *




Z-News  803  is  Copyright  MCMLXXXVII Echelon,  Inc.   All  Rights  Reserved.
Permission  to reprint, wholly or partially, automatically granted  if  source 
credit is given to Echelon.
